auth-logs.tsx 1.1 KB

12345678910111213141516171819202122232425262728293031
  1. import { PermissionAction } from '@supabase/shared-types/out/constants'
  2. import { LogsPreviewer } from '@/components/interfaces/Settings/Logs/LogsPreviewer'
  3. import DefaultLayout from '@/components/layouts/DefaultLayout'
  4. import LogsLayout from '@/components/layouts/LogsLayout/LogsLayout'
  5. import NoPermission from '@/components/ui/NoPermission'
  6. import { useAsyncCheckPermissions } from '@/hooks/misc/useCheckPermissions'
  7. import { useSelectedProjectQuery } from '@/hooks/misc/useSelectedProject'
  8. import type { NextPageWithLayout } from '@/types'
  9. const LogsPage: NextPageWithLayout = () => {
  10. const { data: project } = useSelectedProjectQuery()
  11. const { can: canReadAuthLogs } = useAsyncCheckPermissions(
  12. PermissionAction.ANALYTICS_READ,
  13. 'logflare'
  14. )
  15. return !canReadAuthLogs ? (
  16. <NoPermission isFullPage resourceText="access your project's authentication logs" />
  17. ) : !!project ? (
  18. <LogsPreviewer condensedLayout projectRef={project!.ref} queryType="auth" />
  19. ) : null
  20. }
  21. LogsPage.getLayout = (page) => (
  22. <DefaultLayout>
  23. <LogsLayout title="Auth Logs">{page}</LogsLayout>
  24. </DefaultLayout>
  25. )
  26. export default LogsPage